select 
concat ('IT018E',concat(substr(concat ('000000000',fo.codice_allacciamento),-7,7),substr(concat('0000',fo.progressivo_utenza),-1,1))) "POD",
ut.MATRICOLA_CONTATORE_1 "Matricola contatore",
co.codice_contratto "Codice_contratto",
co.STATO_CONTRATTO "Stato Contrattuale",
co.data_avvio,
case when TO_CHAR(co.Data_chiusura)= '00-000-00' then to_date('31/12/9999','dd/mm/yyyy') else 
       to_date(to_char(co.Data_chiusura-1,'dd/mm/yyyy'),'dd/mm/yyyy')  end data_fine_contratto,
to_char(ut.POTENZA_massima,'009.9') "Potenza disponibile"  ,
pe.NOMINATIVO_RAG_SOC " Ragione Sociale",
co.codice_utente "Codice_Cliente",
concat(concat(concat(concat(trim(indirizzi.TOPONIMO_VIA),' '),
              concat(trim(indirizzi.PREFISSO_VIA),' ')),
              concat(concat(trim(indirizzi.DENOMINAZIONE_VIA),' '),
              concat(trim(indirizzi.CIVICO),' '))),
concat(concat(trim(indirizzi.ESTENSIONE_CIVICO),' '),
       concat(concat(trim(indirizzi.comune),' '),
       concat(trim(indirizzi.PROVINCIA),' ')))) "Indirizzo di Fornitura",
concat(concat(concat(concat(trim(indi.TOPONIMO_VIA),' '),
              concat(trim(indi.PREFISSO_VIA),' ')),
       concat(concat(trim(indi.DENOMINAZIONE_VIA),' '),
              concat(trim(indi.CIVICO),' '))),
concat(concat(trim(indi.ESTENSIONE_CIVICO),' '),


       concat(concat(trim(indi.comune),' '),
       concat(trim(indi.PROVINCIA),' ')))) "Indirizzo di Recapito"




from db1.contratti@pgu3 co,db1.forniture@pgu3 fo,db1.utenze@pgu3 ut,

     db1.persone@pgu3 pe,db1.indirizzi@pgu3,db1.contratti_aggregazioni@pgu3 ca,db1.indirizzi@pgu3 indi
     
     


where co.STATO_CONTRATTO <> 'S' AND co.STATO_CONTRATTO <> 'E'  
 and co.codice_servizio = 'E'
and fo.codice_gestione = co.codice_gestione
and fo.codice_servizio = co.codice_servizio
and fo.codice_contratto = co.codice_contratto
and fo.codice_gestione = ut.codice_gestione
and fo.codice_servizio = ut.codice_servizio
and fo.codice_allacciamento = ut.codice_allacciamento
and fo.progressivo_utenza = ut.progressivo_utenza
--and ut.TENSIONE_PREVISTA = 'B'
and co.codice_gestione = ca.codice_gestione
and co.codice_utente = ca.codice_utente
and ca.CODICE_PERSONA_UTILIZZATORE = pe.CODICE_PERSONA
and ut.CODICE_INDIRIZZO_CONTATORE = indirizzi.CODICE_INDIRIZZO
and ca.CODICE_INDIRIZZO_SPEDIZIONE= indi.CODICE_INDIRIZZO
and ut.STATO_utenza in('D','A','C') 
and ut.tensione_prevista ='M'
and co.CODICE_CAUSALE_CONTRATTO <> 'UE-A' 
and co.CODICE_CAUSALE_CONTRATTO <> 'UE-F'
and co.DATA_STIPULAZIONE <> co.DATA_CHIUSURA 
AND to_char(case when TO_CHAR(co.Data_chiusura)= '00-000-00' then to_date('31/12/9999','dd/mm/yyyy') else 
       to_date(to_char(co.Data_chiusura-1,'dd/mm/yyyy'),'dd/mm/yyyy')  end,'yyyy')

>= ^Anno Competenza;N;NUMERICO^^